home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus Special 16 / AMIGAplus Sonderheft 16 (1998)(ICP)(DE)[!].iso / pd / anwendungen / xpk_source / libraries / nuke / xpklibnuke.a < prev    next >
Text File  |  1998-08-27  |  3KB  |  83 lines

  1.     INCLUDE    AINCLUDE:IncDirs.i    * my asm needs for include dirs
  2.     INCLUDE    "xpk/xpkLibHeader.i"
  3.  
  4. ******************** $VER: xpkLib.i 1.8 (27.06.1998) *********************
  5.  
  6. ; Here the needed variables and strings are initialized. Do not change the
  7. ; format of the IDString. Only add some additional information after the
  8. ; second brake. An additional $VER: string is not needed!
  9.  
  10. VERSION        EQU    1        ; version of your library
  11. REVISION    EQU    7        ; revision of your library
  12.  
  13. LibName        DC.B    'xpkNUKE.library',0
  14. IDString    DC.B    'xpkNUKE 1.7 (06.06.1997)',13,10,0
  15.         CNOP    0,2
  16.  
  17. **************************************************************************
  18.  
  19. ; Functions _xInitCode and _xExitCode give you the ability to do things on
  20. ; opening and closing of library. These functions are called by init
  21. ; routine or by Expunge. Init is the only funtion, that is allowed to set a
  22. ; value for an global variable. The library pointer is in A5, registers
  23. ; have to be saved!!! If _xInitCode returns not zero, the init function
  24. ; fails and thus the library cannot be opened!
  25.  
  26. ; The _xInitCode function can for example be used for processor type checks:
  27. ; the <flag> place holder may be any of the following values:
  28. ; CPU's: AFF_68010, AFF_68020, AFF_68030, AFF_68040
  29. ; FPU's: AFF_68881, AFF_68882
  30. ; NOTE: for better processors (e.g. AFF_68030) the lower bits are set also
  31. ; (AFF_68020 and AFF_68010), so you only need to check one value!.
  32. ; The flags for CPU and FPU can be used both with (AFF_CPU | AFF_FPU).
  33. ;
  34. ;_xInitCode
  35. ;    MOVE.L    4.W,A0
  36. ;    MOVEQ    #0,D0
  37. ;       MOVE.W  AttnFlags(A0),D0
  38. ;    ANDI.W    #<flag>,D0
  39. ;    BEQ.B    .kill
  40. ;    MOVEQ    #0,D0            ; all ok, library can be opened
  41. ;    RTS
  42. ;.kill    MOVEQ    #1,D0            ; check failed, cannot open
  43. ;    RTS
  44.  
  45. ; Sometimes you do not need functions _XpksPackReset, _XpksPackFree or
  46. ; _XpksUnpackFree. In this case you can set these dummies here:
  47. ;
  48. ;_XpksPackFree
  49. _XpksPackReset
  50. _XpksUnpackFree
  51.  
  52. ; Dummy functions, mark out them if you want to use your own ones or above
  53. ; processor check.
  54. _xInitCode
  55. _xExitCode
  56.         MOVEQ    #0,D0
  57.         RTS
  58. ; or set these two if the functions are extern
  59. ;    XREF    _xInitCode
  60. ;    XREF    _xExitCode
  61.  
  62. **************************************************************************
  63.  
  64. ; ASM: in assembler language use this file as an include with directive
  65. ;    INCLUDE    xpkLib____.i
  66.  
  67. ; OTHER: In any other language compile this file with an assembler and get
  68. ; an object file (called like xpkLib____.o). Link this object file together
  69. ; with your other code. This file MUST be the first one (e.g. it is the
  70. ; startup code). Set the following external references.
  71. ;
  72.     XREF    _XpksPackerInfo
  73.     XREF    _XpksPackChunk
  74.     XREF    _XpksPackFree
  75. ;    XREF    _XpksPackReset
  76.     XREF    _XpksUnpackChunk
  77. ;    XREF    _XpksUnpackFree
  78.  
  79. **************************************************************************
  80.  
  81.     INCLUDE    NUKE/NUKE.a
  82.     END
  83.